package com.jk.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

/**
 * @ClassName RecordBean
 * @Descripttion TODO 记录表（服务记录和签约记录）
 * @Author DELL
 * @Date 2022/10/12 19:57
 * @Version 0.001
 */
@Data
@TableName("record")
@Document(indexName = "record")
public class RecordBean {

    @TableId(type = IdType.AUTO)
    @Id
    @Field(value = "record_id",type = FieldType.Integer)
    private Integer record_id;//编号

    @Field(value = "record_name",type = FieldType.Text,analyzer = "ik_max_word")
    private String  record_name;//签约人姓名

    @Field(value = "record_card",type = FieldType.Text)
    private String  record_card;//身份证号

    @Field(value = "record_phone",type = FieldType.Text)
    private String  record_phone;//手机号

    @Field(value = "record_doctor_team",type = FieldType.Integer)
    private Integer record_doctor_team;//签约医生团队

    @Field(value = "record_doctor",type = FieldType.Text)
    private String  record_doctor;//服务医生

    @Field(value = "record_server",type = FieldType.Integer)
    private Integer record_server;//签约服务包

    @Field(value = "record_state",type = FieldType.Integer)
    private Integer record_state;//签约状态

    @Field(value = "record_date",type = FieldType.Text)
    private String  record_date;//最后修改时间

    @Field(value = "record_organization",type = FieldType.Integer)
    private Integer record_organization;//签约机构

    @Field(value = "age",type = FieldType.Integer)
    private Integer  age;//年龄

    @Field(value = "sex",type = FieldType.Text)
    private String sex  ;//性别

    @Field(value = "present_address",type = FieldType.Text)
    private String present_address  ;//居住地

    @Field(value = "residentsof_label",type = FieldType.Text)
    private String residentsof_label  ;//居民标签

    @Field(value = "residentsof_label_two",type = FieldType.Text)
    private String residentsof_label_two  ;//居民标签2

    @Field(value = "contract_doctor",type = FieldType.Text)
    private String contract_doctor  ;//签约医生

    @Field(value = "contract_period",type = FieldType.Text)
    private String contract_period  ;//签约周期

    @Field(value = "cost",type = FieldType.Integer)
    private Integer cost  ;//费用

    @Field(value = "contract_type",type = FieldType.Integer)
    private Integer contract_type  ;//签约类型

    @Field(value = "commencement_date",type = FieldType.Text)
    private String commencement_date  ;//生效日期

    @Field(value = "date_due",type = FieldType.Text)
    private String date_due  ;//到期日期

    @Field(value = "auditor",type = FieldType.Text)
    private String auditor  ;//审核人

    @Field(value = "audit_time",type = FieldType.Text)
    private String audit_time  ;//审核时间

    @Field(value = "timeof_payment",type = FieldType.Text)
    private String timeof_payment  ;//付款时间

    @Field(value = "modeof_payment",type = FieldType.Text)
    private String modeof_payment  ;//支付方式

    @Field(value = "signeda_note",type = FieldType.Text)
    private String signeda_note  ;//签约备注

    @Field(value = "pid",type = FieldType.Integer)
    private Integer pid;//

    //业务字段
    @TableField(exist = false)
    @JsonIgnore
    private String staterDate;//开始时间
    @TableField(exist = false)
    @JsonIgnore
    private  String  endDate;//结束时间
}
